package org.jfab.core.inflator;

/**
 * Provides a standard, immutable group of inflators.
 */
public class InflatorGroup
{
    /** Class inflator. */
    private final CGClassInflator _classInflator;

    /** Enum inflator. */
    private final CGEnumInflator _enumInflator;

    /** Interface inflator. */
    private final CGInterfaceInflator _interfaceInflator;

    /**
     * Construct this object.
     * 
     * @param interfaceInflator Interface inflator.
     * @param classInflator Class inflator.
     * @param enumInflator Enum inflator.
     */
    public InflatorGroup(final CGInterfaceInflator interfaceInflator,
            final CGClassInflator classInflator,
            final CGEnumInflator enumInflator)
    {
        _interfaceInflator = interfaceInflator;
        _classInflator = classInflator;
        _enumInflator = enumInflator;
    }

    /**
     * @return the classInflator
     */
    public CGClassInflator getClassInflator()
    {
        return _classInflator;
    }

    /**
     * @return the enumInflator
     */
    public CGEnumInflator getEnumInflator()
    {
        return _enumInflator;
    }

    /**
     * @return the interfaceInflator
     */
    public CGInterfaceInflator getInterfaceInflator()
    {
        return _interfaceInflator;
    }

}
